#ifndef MOVE_H
#define MOVE_H
#include "Headers.h"

class Move
{
public:
    Move();
    Move(int index,QString color,QString name);
    Move(int index,QString color,QString name,QString comm);
    Move(int index,QString color,QString name,QString squareBegin,QString squareEnd);
    Move(int index,QString color,QString name,QString squareBegin,QString squareEnd,QString castlingBegin,QString castlingEnd);
    ~Move();
    void addSquare(QString squareBegin,QString squareEnd);
    void addSquare(QString squareBegin,QString squareEnd,QString castlingBegin,QString castlingEnd);
    QString getColor() const;
    QString getName() const;
    QString getSquareBegin() const;
    QString getSquareEnd() const;
    QString getCastlingBegin() const;
    QString getCastlingEnd() const;
    QString getComm() const;
private:
    QString _name;
    QString _color;
    QString _squareBegin;
    QString _squareEnd;
    QString _castlingBegin;
    QString _castlingEnd;
    QString _comm;
    int _index;
    bool _beat;
};
typedef QVector<Move *> Moves;

#endif // MOVE_H
